HAL RNG constants migration

This section provides information about the HAL RNG constants migration.

HAL RNG error code constants

HAL1

HAL2

#define  HAL_RNG_ERROR_NONE
#define  HAL_RNG_ERROR_SEED
#define  HAL_RNG_ERROR_CLOCK

#define  HAL_RNG_ERROR_INVALID_CALLBACK
#define  HAL_RNG_ERROR_TIMEOUT
#define  HAL_RNG_ERROR_BUSY
#define  HAL_RNG_ERROR_RECOVERSEED
#define HAL_RNG_ERROR_NONE
#define HAL_RNG_ERROR_SEED
#define HAL_RNG_ERROR_CLOCK


Removed; these kinds of logical errors are reported by direct function return.

Related concept: Revised and optimized HAL error management


HAL RNG clock divider constants

HAL1

HAL2



#define RNG_CLKDIV_BY_1
#define RNG_CLKDIV_BY_2
#define RNG_CLKDIV_BY_4
#define RNG_CLKDIV_BY_8
#define RNG_CLKDIV_BY_16
#define RNG_CLKDIV_BY_32
#define RNG_CLKDIV_BY_64
#define RNG_CLKDIV_BY_128
#define RNG_CLKDIV_BY_256
#define RNG_CLKDIV_BY_512
#define RNG_CLKDIV_BY_1024
#define RNG_CLKDIV_BY_2048
#define RNG_CLKDIV_BY_4096
#define RNG_CLKDIV_BY_8192
#define RNG_CLKDIV_BY_16384
#define RNG_CLKDIV_BY_32768
typedef enum
{
  HAL_RNG_CLOCK_DIVIDER_BY_1
  HAL_RNG_CLOCK_DIVIDER_BY_2
  HAL_RNG_CLOCK_DIVIDER_BY_4
  HAL_RNG_CLOCK_DIVIDER_BY_8
  HAL_RNG_CLOCK_DIVIDER_BY_16
  HAL_RNG_CLOCK_DIVIDER_BY_32
  HAL_RNG_CLOCK_DIVIDER_BY_64
  HAL_RNG_CLOCK_DIVIDER_BY_128
  HAL_RNG_CLOCK_DIVIDER_BY_256
  HAL_RNG_CLOCK_DIVIDER_BY_512
  HAL_RNG_CLOCK_DIVIDER_BY_1024
  HAL_RNG_CLOCK_DIVIDER_BY_2048
  HAL_RNG_CLOCK_DIVIDER_BY_4096
  HAL_RNG_CLOCK_DIVIDER_BY_8192
  HAL_RNG_CLOCK_DIVIDER_BY_16384
  HAL_RNG_CLOCK_DIVIDER_BY_32768
} hal_rng_clock_divider_t;

HAL RNG compliance configuration constants

HAL1

HAL2



#define RNG_NIST_COMPLIANT
#define RNG_CUSTOM_NIST
typedef enum
{
  HAL_RNG_CUSTOM
  HAL_RNG_NIST
} hal_rng_standard_t;

HAL RNG clock error detection constants

HAL1

HAL2



#define RNG_CED_ENABLE
#define RNG_CED_DISABLE
typedef enum
{
  HAL_RNG_CLOCK_ERROR_DETECTION_ENABLED
  HAL_RNG_CLOCK_ERROR_DETECTION_DISABLED
} hal_rng_clock_error_detection_status_t;

Related concepts:


HAL RNG automatic reset state constants

HAL1

HAL2

In HAL1, the RNG automatic reset state is encapsulated as a member of the RNG_ConfigTypeDef structure.

Removed: In HAL2, the RNG automatic reset state is managed through dedicated functions within the HAL layer.

For more details, refer to HAL RNG configuration type definition.

#define RNG_ARDIS_ENABLE
#define RNG_ARDIS_DISABLE
HAL_RNG_EnableAutoReset()
HAL_RNG_DisableAutoReset()

HAL RNG interrupt constants

The listed defines in HAL1 are used by : HAL RNG get IT, and HAL RNG clear interrupt flags.

All RNG interrupt status flag definitions and macros are removed from HAL2.

HAL1

HAL2

#define RNG_IT_DRDY

Removed; use LL_RNG_IsActiveFlag_DRDY.

#define RNG_IT_CEI

Removed; use LL_RNG_IsActiveFlag_CEIS / LL_RNG_ClearFlag_CEIS.

#define RNG_IT_SEI

Removed; use LL_RNG_IsActiveFlag_SEIS / LL_RNG_ClearFlag_SEIS.

HAL RNG flag constants

The listed defines in HAL1 are used by : HAL RNG get flag.

All RNG flag definitions and macros are removed from HAL2.

HAL1

HAL2

#define RNG_FLAG_DRDY

Removed; use LL_RNG_IsActiveFlag_DRDY.

#define RNG_FLAG_CECS

Removed; use LL_RNG_IsActiveFlag_CECS.

#define RNG_FLAG_SECS

Removed; use LL_RNG_IsActiveFlag_SECS.